#if !GENERATOR

using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Xml.Serialization;
using System.Collections.Generic;

using YF.OneNote;


namespace YF.OneNote.DataTypes
{
  public partial class Number: NotesNode
  {
  
	public Number()
    {
      
	}

    

	[XmlAttribute]
    public override string ID
    {
      get
      {
        return "!!!No ID!!!";
      }
      set
      {
      }
    }

	
    protected override bool UpdateContents(NotesNode newContent, List<INotesChange> changes)
    {
	  Number item = (Number)newContent;
      bool changed = false;

      
      if (bold != item.bold)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = boldField;
        propertyChange.NewValue = item.boldField;
        propertyChange.PropertyName = "bold";
        changes.Add(propertyChange);

		
        boldField = item.boldField;
      }

      if (font != item.font)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = fontField;
        propertyChange.NewValue = item.fontField;
        propertyChange.PropertyName = "font";
        changes.Add(propertyChange);

		
        fontField = item.fontField;
      }

      if (fontColor != item.fontColor)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = fontColorField;
        propertyChange.NewValue = item.fontColorField;
        propertyChange.PropertyName = "fontColor";
        changes.Add(propertyChange);

		
        fontColorField = item.fontColorField;
      }

      if (fontSize != item.fontSize)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = fontSizeField;
        propertyChange.NewValue = item.fontSizeField;
        propertyChange.PropertyName = "fontSize";
        changes.Add(propertyChange);

		
        fontSizeField = item.fontSizeField;
      }

      if (italic != item.italic)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = italicField;
        propertyChange.NewValue = item.italicField;
        propertyChange.PropertyName = "italic";
        changes.Add(propertyChange);

		
        italicField = item.italicField;
      }

      if (language != item.language)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = languageField;
        propertyChange.NewValue = item.languageField;
        propertyChange.PropertyName = "language";
        changes.Add(propertyChange);

		
        languageField = item.languageField;
      }

      if (numberFormat != item.numberFormat)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = numberFormatField;
        propertyChange.NewValue = item.numberFormatField;
        propertyChange.PropertyName = "numberFormat";
        changes.Add(propertyChange);

		
        numberFormatField = item.numberFormatField;
      }

      if (numberSequence != item.numberSequence)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = numberSequenceField;
        propertyChange.NewValue = item.numberSequenceField;
        propertyChange.PropertyName = "numberSequence";
        changes.Add(propertyChange);

		
        numberSequenceField = item.numberSequenceField;
      }

      if (restartNumberingAt != item.restartNumberingAt)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = restartNumberingAtField;
        propertyChange.NewValue = item.restartNumberingAtField;
        propertyChange.PropertyName = "restartNumberingAt";
        changes.Add(propertyChange);

		
        restartNumberingAtField = item.restartNumberingAtField;
      }

      if (text != item.text)
      {
        changed = true;
		
		NotesPropertyChange propertyChange = new NotesPropertyChange();

        propertyChange.ChangeType = NoteChangeType.Changed;
        propertyChange.OldValue = textField;
        propertyChange.NewValue = item.textField;
        propertyChange.PropertyName = "text";
        changes.Add(propertyChange);

		
        textField = item.textField;
      }


      return changed;
    }
  }
}

#endif